﻿#pragma once
#include "AsTask.h"
#include "AsCamera.h"
#include <QVector>

// 取图任务类
class ADF_EXPORT AsFetchDataTask : public AsTask {
public:
	AsFetchDataTask(int iStoreKey, AsCamera* pCamera);

private:
	AsCamera*	m_pCamera;
	int			m_iStoreKey;

public:
	virtual int onTaskAction() override;			//执行任务

};

// 取3D数据任务(保存2个Mat)
class ADF_EXPORT AsFetch3DMatTask : public AsTask 
{
public:
	AsFetch3DMatTask(int iStoreKey, AsCamera* pCamera);

private:
	AsCamera*	m_pCamera;
	int			m_iStoreKey;

public:
	virtual int onTaskAction() override;			//执行任务

};

// 取连续3D数据任务
class ADF_EXPORT AsFetchContinuours3DMatTask : public AsTask
{
public:
	AsFetchContinuours3DMatTask(int iStoreKey, AsCamera* pCamera);

private:
	AsCamera*	m_pCamera;
	int			m_iStoreKey;

public:
	virtual int onTaskAction() override;			//执行任务

};
